﻿using System;
using System.ComponentModel;
using System.Windows.Forms;

namespace Marmat.Forms
{

    // Partial Class Grid

    // #Region "A.编辑"

    // '''《AfterEdit》
    // ''' <summary>
    // ''' 结束编辑单元格后执行，通常用于执行一些特定的操作和计算。
    // ''' </summary>
    // <Category("A.编辑"), Description("结束编辑单元格后执行，通常用于执行一些特定的操作和计算。")>
    // Private Event ValidatingEditor(sender As Object, e As RowColEventArgs)

    // ' ''' <summary>
    // ' ''' 在编辑框每输入一个字符时执行。
    // ' ''' </summary>
    // '<Category("编辑"), Description("在编辑框每输入一个字符时执行。")>
    // 'Private Event KeyPressEdit(sender As Object, e As RowColEventArgs)

    // ' ''' <summary>
    // ' ''' 在编辑框中按下某一按键时执行。
    // ' ''' </summary>
    // '<Category("编辑"), Description("在编辑框中按下某一按键时执行。")>
    // 'Private Event KeyDownEdit(sender As Object, e As RowColEventArgs)

    // ' ''' <summary>
    // ' ''' 在编辑框中松开某一按键时执行。
    // ' ''' </summary>
    // '<Category("编辑"), Description("在编辑框中松开某一按键时执行。")>
    // 'Private Event KeyUpEdit(sender As Object, e As RowColEventArgs)


    // #End Region

    // #Region "数据"
    // #End Region

    // #Region "增加行"

    // #End Region

    // #Region "删除行"

    // #End Region

    // #Region "锁定行"

    // #End Region

    // #Region "选择"
    // #End Region

    // #Region "复选"

    // #End Region

    // #Region "调整"

    // #End Region

    // #Region "绘制"
    // #End Region

    // #Region "加载"

    // #End Region

    // #Region "筛选"

    // #End Region

    // #Region "排序"
    // ''' <summary>
    // ''' 排序数据之前执行，也就是Table的Sort属性发生变化前执行。
    // ''' </summary>
    // ''' <param name="sender"></param>
    // ''' <param name="e"></param>
    // ''' <remarks></remarks>
    // <Category("排序"), Description("排序数据之前执行，也就是Table的Sort属性发生变化前执行。")>
    // Private Event BeforeSort(ByVal sender As Object, ByVal e As  Marmat.Forms.BaseControl.Grid.BeforeSortEventArgs)

    // ''' <summary>
    // ''' 排序数据后执行，也就是Table的Sort属性发生后执行。
    // ''' </summary>
    // ''' <param name="sender"></param>
    // ''' <param name="e"></param>
    // ''' <remarks></remarks>
    // <Category("排序"), Description("排序数据后执行，也就是Table的Sort属性发生后执行。")>
    // Private Event AfterSort(ByVal sender As Object, ByVal e As  Marmat.Forms.BaseControl.Grid.GridEventArgs)

    // #End Region

    // #Region "操作"

    // Private Event CellMerge(sender As Object, e As CellMergeEventArgs)

    // Public Shadows Event KeyDown(ByVal sender As Object, ByVal e As KeyEventArgs)
    // #End Region

    // End Class

    public partial class BaseGrid
    {

        /* TODO ERROR: Skipped RegionDirectiveTrivia */
        /// <summary>
        /// 把编辑器指派到个别单元格。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        [Browsable(true)]
        [Category("编辑器")]
        [Description("把编辑器指派到个别单元格。")]
        public event CustomRowCellEditEventHandler CustomRowCellEdit;

        public delegate void CustomRowCellEditEventHandler(object sender, Views.Grid.CustomRowCellEditEventArgs e);

        /// <summary>
        /// 允许你指定一个自定义编辑器为就地编辑一个列,用于覆盖默认列编辑器,这是默认情况下用于显示和编辑模式。这个事件还允许您在编辑表单中更改编辑器。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        [Browsable(true)]
        [Category("编辑器")]
        [Description("允许你指定一个自定义编辑器为就地编辑一个列,用于覆盖默认列编辑器,这是默认情况下用于显示和编辑模式。这个事件还允许您在编辑表单中更改编辑器。")]
        public event CustomRowCellEditForEditingEventHandler CustomRowCellEditForEditing;

        public delegate void CustomRowCellEditForEditingEventHandler(object sender, Views.Grid.CustomRowCellEditEventArgs e);

        [Browsable(true)]
        [Category("编辑器")]
        private event EditFormPreparedEventHandler EditFormPrepared;

        private delegate void EditFormPreparedEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.EditFormPreparedEventArgs e);

        [Browsable(true)]
        [Category("编辑器")]
        private event EditFormShowingEventHandler EditFormShowing;

        private delegate void EditFormShowingEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.EditFormShowingEventArgs e);

        /// <summary>
        /// 关闭单元格编辑器时发生。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        /// <remarks></remarks>
        [Browsable(true)]
        [Category("编辑器")]
        [Description("关闭单元格编辑器时发生。")]
        public event EventHandler HiddenEditor;

        /// <summary>
        /// 单元格编辑器正要被显示时发生，可用来阻止内置编辑器被激活。
        /// </summary>
        [Browsable(true)]
        [Category("编辑器")]
        [Description("单元格编辑器正要被显示时发生，可用来阻止内置编辑器被激活。")]
        public event ShowingEditorEventHandler ShowingEditor;

        public delegate void ShowingEditorEventHandler(object sender, Views.Grid.RowColCancelEventArgs e);

        [Browsable(true)]
        [Category("编辑器")]
        private event ShowingPopupEditFormEventHandler ShowingPopupEditForm;

        private delegate void ShowingPopupEditFormEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.ShowingPopupEditFormEventArgs e);

        /// <summary>
        /// 显示编辑器时触发。
        /// </summary>
        [Browsable(true)]
        [Category("编辑器")]
        [Description("显示编辑器时触发。")]
        public event ShownEditorEventHandler ShownEditor;

        public delegate void ShownEditorEventHandler(object sender, Views.Grid.RowColEventArgs e);

        /// <summary>
        /// 离开单元格编辑器时发生，可用来检查内容的合法性。
        /// </summary>
        [Browsable(true)]
        [Category("编辑器")]
        [Description("离开单元格编辑器时发生，可用来检查内容的合法性。")]
        public event ValidatingEditorEventHandler ValidatingEditor;

        public delegate void ValidatingEditorEventHandler(object sender, Views.Grid.ValidateEditEventArgs e);
        /* TODO ERROR: Skipped EndRegionDirectiveTrivia */
        /* TODO ERROR: Skipped RegionDirectiveTrivia */
        [Browsable(true)]
        [Category("打印")]
        private event AfterPrintRowEventHandler AfterPrintRow;

        private delegate void AfterPrintRowEventHandler(object sender, DevExpress.XtraGrid.Views.Printing.PrintRowEventArgs e);

        [Browsable(true)]
        [Category("打印")]
        private event BeforePrintRowEventHandler BeforePrintRow;

        private delegate void BeforePrintRowEventHandler(object sender, DevExpress.XtraGrid.Views.Printing.CancelPrintRowEventArgs e);
        /* TODO ERROR: Skipped EndRegionDirectiveTrivia */
        /* TODO ERROR: Skipped RegionDirectiveTrivia */    /// <summary>
                                                           /// 提供自定义单元合并行为的能力。
                                                           /// </summary>
                                                           /// <param name="sender"></param>
                                                           /// <param name="e"></param>
        [Browsable(true)]
        [Category("合并")]
        [Description("提供自定义单元合并行为的能力")]
        public event CellMergeEventHandler CellMerge;

        public delegate void CellMergeEventHandler(object sender, Views.Grid.CellMergeEventArgs e);
        /* TODO ERROR: Skipped EndRegionDirectiveTrivia */
        /* TODO ERROR: Skipped RegionDirectiveTrivia */
        [Browsable(true)]
        [Category("键盘")]
        public new event KeyDownEventHandler KeyDown;

        public new delegate void KeyDownEventHandler(object sender, KeyEventArgs e);

        [Browsable(true)]
        [Category("键盘")]
        public new event KeyPressEventHandler KeyPress;

        public new delegate void KeyPressEventHandler(object sender, KeyPressEventArgs e);

        [Browsable(true)]
        [Category("键盘")]
        public new event KeyUpEventHandler KeyUp;

        public new delegate void KeyUpEventHandler(object sender, KeyEventArgs e);
        /* TODO ERROR: Skipped EndRegionDirectiveTrivia */
        /* TODO ERROR: Skipped RegionDirectiveTrivia */
        [Browsable(true)]
        [Category("焦点")]
        public new event GotFocusEventHandler GotFocus;

        public new delegate void GotFocusEventHandler(object sender, EventArgs e);

        [Browsable(true)]
        [Category("焦点")]
        public new event LostFocusEventHandler LostFocus;

        public new delegate void LostFocusEventHandler(object sender, EventArgs e);

        /// <summary>
        /// 提供使用自定义规则对数据进行分组的功能。
        /// </summary>
        [Browsable(true)]
        [Category("排序")]
        [Description("提供使用自定义规则对数据进行分组的功能。")]
        public event CustomColumnGroupEventHandler CustomColumnGroup;

        public delegate void CustomColumnGroupEventHandler(object sender, Views.Grid.CustomColumnSortEventArgs e);

        /// <summary>
        /// 允许您实现自定义规则，根据这些规则对网格列进行排序
        /// 其数据。一个列只有在它的DevExpress.XtraGrid.Columns.GridColumn.SortMode时才使用这些自定义规则
        /// 属性设置为DevExpress.XtraGrid.ColumnSortMode.Custom。
        /// </summary>
        [Browsable(true)]
        [Category("排序")]
        [Description("允许您实现自定义规则，根据这些规则对网格列进行排序其数据。")]
        public event CustomColumnSortEventHandler CustomColumnSort;

        public delegate void CustomColumnSortEventHandler(object sender, Views.Grid.CustomColumnSortEventArgs e);

        /// <summary>
        /// 分组操作完成后触发。
        /// </summary>
        [Browsable(true)]
        [Category("排序")]
        [Description("分组操作完成后触发。")]
        public event EndGroupingEventHandler EndGrouping;

        public delegate void EndGroupingEventHandler(object sender, EventArgs e);

        /// <summary>
        /// 排序操作完成后触发。
        /// </summary>
        [Browsable(true)]
        [Category("排序")]
        [Description("排序操作完成后触发。")]
        public event EndSortingEventHandler EndSorting;

        public delegate void EndSortingEventHandler(object sender, EventArgs e);

        /// <summary>
        /// 在开始分组操作之前触发。
        /// </summary>
        [Browsable(true)]
        [Category("排序")]
        [Description("在开始分组操作之前触发。")]
        public event StartGroupingEventHandler StartGrouping;

        public delegate void StartGroupingEventHandler(object sender, EventArgs e);

        /// <summary>
        /// 在排序操作开始之前触发。
        /// </summary>
        [Browsable(true)]
        [Category("排序")]
        [Description("在排序操作开始之前触发。")]
        public event StartSortingEventHandler StartSorting;

        public delegate void StartSortingEventHandler(object sender, EventArgs e);

        /// <summary>
        /// 某一列的内容被更改后执行，此时列的内容已经是更改后的值。
        /// </summary>
        [Browsable(true)]
        [Category("属性变更")]
        [Description("某一列的内容被更改后执行，此时列的内容已经是更改后的值。")]
        public event CellValueChangedEventHandler CellValueChanged;

        public delegate void CellValueChangedEventHandler(object sender, Views.Grid.CellValueChangingEventArgs e);

        /// <summary>
        /// 编辑框中内容发生变化时执行。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        [Browsable(true)]
        [Category("属性变更")]
        [Description("编辑框中内容发生变化时执行。")]
        public event CellValueChangingEventHandler CellValueChanging;

        public delegate void CellValueChangingEventHandler(object sender, Views.Grid.CellValueChangingEventArgs e);

        [Browsable(true)]
        [Category("属性变更")]
        private event EventHandler ColumnChanged;
        [Browsable(true)]
        [Category("属性变更")]
        private event EventHandler ColumnFilterChanged;
        [Browsable(true)]
        [Category("属性变更")]
        private event EventHandler ColumnPositionChanged;
        [Browsable(true)]
        [Category("属性变更")]
        private event ColumnUnboundExpressionChangedEventHandler ColumnUnboundExpressionChanged;

        private delegate void ColumnUnboundExpressionChangedEventHandler(object sender, DevExpress.XtraGrid.Views.Base.ColumnEventArgs e);

        [Browsable(true)]
        [Category("属性变更")]
        public event ColumnWidthChangedEventHandler ColumnWidthChanged;

        public delegate void ColumnWidthChangedEventHandler(object sender, Views.Grid.ColumnEventArgs e);

        [Browsable(true)]
        [Category("属性变更")]
        private event EventHandler DataSourceChanged;

        /// <summary>
        /// 焦点列变化之后发生。
        /// </summary>
        [Browsable(true)]
        [Category("属性变更")]
        [Description("焦点列变化之后发生。FocusedRowChanged")]
        public event FocusedColumnChangedEventHandler FocusedColumnChanged;

        public delegate void FocusedColumnChangedEventHandler(object sender, Views.Grid.FocusedColumnChangedEventArgs e);

        /// <summary>
        /// 焦点行变化之后发生。
        /// </summary>
        [Browsable(true)]
        [Category("属性变更")]
        [Description("焦点行变化之后发生。")]
        public event FocusedRowChangedEventHandler FocusedRowChanged;

        public delegate void FocusedRowChangedEventHandler(object sender, Views.Grid.FocusedRowChangedEventArgs e);

        [Browsable(true)]
        [Category("属性变更")]
        private event FocusedRowObjectChangedEventHandler FocusedRowObjectChanged;

        private delegate void FocusedRowObjectChangedEventHandler(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowObjectChangedEventArgs e);

        [Browsable(true)]
        [Category("属性变更")]
        private event EventHandler LeftCoordChanged;

        /// <summary>
        /// 行数变化之后发生。
        /// </summary>
        [Browsable(true)]
        [Category("属性变更")]
        [Description("行数变化之后发生。")]
        public event EventHandler RowCountChanged;

        /// <summary>
        /// 当行/单元格选择在多个选择模式下发生改变时。
        /// </summary>
        [Browsable(true)]
        [Category("属性变更")]
        [Description("当行/单元格选择在多个选择模式下发生改变时。")]
        public event SelectionChangedEventHandler SelectionChanged;

        public delegate void SelectionChangedEventHandler(object sender, Views.Grid.SelectionChangedEventArgs e);
        /// <summary>
        /// 当视图垂直滚动时触发。
        /// </summary>
        [Browsable(true)]
        [Category("属性变更")]
        [Description("当视图垂直滚动时触发。")]
        public event EventHandler TopRowChanged;

        [Browsable(true)]
        [Category("鼠标")]
        public new event MouseDownEventHandler MouseDown;

        public new delegate void MouseDownEventHandler(object sender, MouseEventArgs e);

        [Browsable(true)]
        [Category("鼠标")]
        public new event EventHandler MouseEnter;
        [Browsable(true)]
        [Category("鼠标")]
        public new event EventHandler MouseLeave;
        [Browsable(true)]
        [Category("鼠标")]
        public new event MouseMoveEventHandler MouseMove;

        public new delegate void MouseMoveEventHandler(object sender, MouseEventArgs e);

        [Browsable(true)]
        [Category("鼠标")]
        public new event MouseUpEventHandler MouseUp;

        public new delegate void MouseUpEventHandler(object sender, MouseEventArgs e);

        [Browsable(true)]
        [Category("鼠标")]
        public new event MouseWheelEventHandler MouseWheel;

        public new delegate void MouseWheelEventHandler(object sender, MouseEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event BeforeLoadLayoutEventHandler BeforeLoadLayout;

        private delegate void BeforeLoadLayoutEventHandler(object sender, DevExpress.Utils.LayoutAllowEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event CalcPreviewTextEventHandler CalcPreviewText;

        private delegate void CalcPreviewTextEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.CalcPreviewTextEventArgs e);

        /// <summary>
        /// 允许您替换单元格显示文本(对于单元格，使用基于文本框的编辑器)，
        /// 组行文本和筛选菜单项标题。
        /// </summary>
        [Browsable(true)]
        [Category("数据")]
        [Description("允许您替换单元格显示文本(对于单元格，使用基于文本框的编辑器)，组行文本和筛选菜单项标题。")]
        public event CustomColumnDisplayTextEventHandler CustomColumnDisplayText;

        public delegate void CustomColumnDisplayTextEventHandler(object sender, Views.Grid.CustomColumnDisplayTextEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event CustomRowFilterEventHandler CustomRowFilter;

        private delegate void CustomRowFilterEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowFilterEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event CustomSummaryCalculateEventHandler CustomSummaryCalculate;

        private delegate void CustomSummaryCalculateEventHandler(object sender, DevExpress.Data.CustomSummaryEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event CustomSummaryExistsEventHandler CustomSummaryExists;

        private delegate void CustomSummaryExistsEventHandler(object sender, DevExpress.Data.CustomSummaryExistEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event CustomUnboundColumnDataEventHandler CustomUnboundColumnData;

        private delegate void CustomUnboundColumnDataEventHandler(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDataEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event DataManagerResetEventHandler DataManagerReset;

        private delegate void DataManagerResetEventHandler(object sender, EventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event InitNewRowEventHandler InitNewRow;

        private delegate void InitNewRowEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.InitNewRowEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event LayoutUpgradeEventHandler LayoutUpgrade;

        private delegate void LayoutUpgradeEventHandler(object sender, DevExpress.Utils.LayoutUpgradeEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event MeasurePreviewHeightEventHandler MeasurePreviewHeight;

        private delegate void MeasurePreviewHeightEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.RowHeightEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event PrintExportProgressEventHandler PrintExportProgress;

        private delegate void PrintExportProgressEventHandler(object sender, ProgressChangedEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event PrintInitializeEventHandler PrintInitialize;

        private delegate void PrintInitializeEventHandler(object sender, DevExpress.XtraGrid.Views.Base.PrintInitializeEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event SubstituteFilterEventHandler SubstituteFilter;

        private delegate void SubstituteFilterEventHandler(object sender, DevExpress.Data.SubstituteFilterEventArgs e);

        [Browsable(true)]
        [Category("数据")]
        private event SubstituteSortInfoEventHandler SubstituteSortInfo;

        private delegate void SubstituteSortInfoEventHandler(object sender, DevExpress.Data.SubstituteSortInfoEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event CustomFilterDialogEventHandler CustomFilterDialog;

        private delegate void CustomFilterDialogEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.CustomFilterDialogEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event CustomFilterDisplayTextEventHandler CustomFilterDisplayText;

        private delegate void CustomFilterDisplayTextEventHandler(object sender, DevExpress.XtraEditors.Controls.ConvertEditValueEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event FilterEditorCreatedEventHandler FilterEditorCreated;

        private delegate void FilterEditorCreatedEventHandler(object sender, DevExpress.XtraGrid.Views.Base.FilterControlEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event FilterPopupExcelDataEventHandler FilterPopupExcelData;

        private delegate void FilterPopupExcelDataEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.FilterPopupExcelDataEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event GridMenuItemClickEventHandler GridMenuItemClick;

        private delegate void GridMenuItemClickEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.GridMenuItemClickEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event GroupRowCollapsedEventHandler GroupRowCollapsed;

        private delegate void GroupRowCollapsedEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event GroupRowCollapsingEventHandler GroupRowCollapsing;

        private delegate void GroupRowCollapsingEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowAllowEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event GroupRowExpandedEventHandler GroupRowExpanded;

        private delegate void GroupRowExpandedEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event GroupRowExpandingEventHandler GroupRowExpanding;

        private delegate void GroupRowExpandingEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowAllowEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event PopupMenuShowingEventHandler PopupMenuShowing;

        private delegate void PopupMenuShowingEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.PopupMenuShowingEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event ShowFilterPopupCheckedListBoxEventHandler ShowFilterPopupCheckedListBox;

        private delegate void ShowFilterPopupCheckedListBoxEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.FilterPopupCheckedListBoxEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event ShowFilterPopupDateEventHandler ShowFilterPopupDate;

        private delegate void ShowFilterPopupDateEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.FilterPopupDateEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event ShowFilterPopupExcelEventHandler ShowFilterPopupExcel;

        private delegate void ShowFilterPopupExcelEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.FilterPopupExcelEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event ShowFilterPopupListBoxEventHandler ShowFilterPopupListBox;

        private delegate void ShowFilterPopupListBoxEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.FilterPopupListBoxEventArgs e);

        [Browsable(true)]
        [Category("特性")]
        private event UnboundExpressionEditorCreatedEventHandler UnboundExpressionEditorCreated;

        private delegate void UnboundExpressionEditorCreatedEventHandler(object sender, DevExpress.XtraGrid.Views.Base.UnboundExpressionEditorEventArgs e);

        [Browsable(true)]
        [Category("拖放")]
        private event DragObjectDropEventHandler DragObjectDrop;

        private delegate void DragObjectDropEventHandler(object sender, DevExpress.XtraGrid.Views.Base.DragObjectDropEventArgs e);

        [Browsable(true)]
        [Category("拖放")]
        private event DragObjectOverEventHandler DragObjectOver;

        private delegate void DragObjectOverEventHandler(object sender, DevExpress.XtraGrid.Views.Base.DragObjectOverEventArgs e);

        [Browsable(true)]
        [Category("拖放")]
        private event DragObjectStartEventHandler DragObjectStart;

        private delegate void DragObjectStartEventHandler(object sender, DevExpress.XtraGrid.Views.Base.DragObjectStartEventArgs e);
        /// <summary>
        /// 在计算行高度的时候执行。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        [Browsable(true)]
        [Category("外观")]
        [Description("在计算行高度的时候执行。")]
        public event CalcRowHeightEventHandler CalcRowHeight;

        public delegate void CalcRowHeightEventHandler(object sender, Views.Grid.RowHeightEventArgs e);

        [Browsable(true)]
        [Category("外观")]
        private event GroupLevelStyleEventHandler GroupLevelStyle;

        private delegate void GroupLevelStyleEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.GroupLevelStyleEventArgs e);

        [Browsable(true)]
        [Category("外观")]
        private event RowCellDefaultAlignmentEventHandler RowCellDefaultAlignment;

        private delegate void RowCellDefaultAlignmentEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowCellAlignmentEventArgs e);

        /// <summary>
        /// 在显示此单元格之前，为每个网格单元格触发。允许您修改外观。
        /// </summary>
        [Browsable(true)]
        [Category("外观")]
        [Description("在显示此单元格之前，为每个网格单元格触发。允许您修改外观。")]
        public event RowCellStyleEventHandler RowCellStyle;

        public delegate void RowCellStyleEventHandler(object sender, Views.Grid.RowCellStyleEventArgs e);

        /// <summary>
        /// 允许您修改行的样式。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        [Browsable(true)]
        [Category("外观")]
        [Description("允许您修改行的样式。")]
        public event RowStyleEventHandler RowStyle;

        public delegate void RowStyleEventHandler(object sender, Views.Grid.RowStyleEventArgs e);

        [Browsable(true)]
        [Category("异步数据")]
        private event AsyncCompletedEventHandler AsyncCompleted;

        private delegate void AsyncCompletedEventHandler(object sender, EventArgs e);

        [Browsable(true)]
        [Category("异步数据")]
        private event FocusedRowLoadedEventHandler FocusedRowLoaded;

        private delegate void FocusedRowLoadedEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowEventArgs e);

        [Browsable(true)]
        [Category("异步数据")]
        private event RowLoadedEventHandler RowLoaded;

        private delegate void RowLoadedEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowEventArgs e);

        [Browsable(true)]
        [Category("主/详细信息")]
        private event MasterRowCollapsedEventHandler MasterRowCollapsed;

        private delegate void MasterRowCollapsedEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.CustomMasterRowEventArgs e);

        [Browsable(true)]
        [Category("主/详细信息")]
        private event MasterRowCollapsingEventHandler MasterRowCollapsing;

        private delegate void MasterRowCollapsingEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.MasterRowCanExpandEventArgs e);

        [Browsable(true)]
        [Category("主/详细信息")]
        private event MasterRowEmptyEventHandler MasterRowEmpty;

        private delegate void MasterRowEmptyEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.MasterRowEmptyEventArgs e);

        [Browsable(true)]
        [Category("主/详细信息")]
        private event MasterRowExpandedEventHandler MasterRowExpanded;

        private delegate void MasterRowExpandedEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.CustomMasterRowEventArgs e);

        [Browsable(true)]
        [Category("主/详细信息")]
        private event MasterRowExpandingEventHandler MasterRowExpanding;

        private delegate void MasterRowExpandingEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.MasterRowCanExpandEventArgs e);

        [Browsable(true)]
        [Category("主/详细信息")]
        private event MasterRowGetChildListEventHandler MasterRowGetChildList;

        private delegate void MasterRowGetChildListEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.MasterRowGetChildListEventArgs e);

        [Browsable(true)]
        [Category("主/详细信息")]
        private event MasterRowGetLevelDefaultViewEventHandler MasterRowGetLevelDefaultView;

        private delegate void MasterRowGetLevelDefaultViewEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.MasterRowGetLevelDefaultViewEventArgs e);

        [Browsable(true)]
        [Category("主/详细信息")]
        private event MasterRowGetRelationCountEventHandler MasterRowGetRelationCount;

        private delegate void MasterRowGetRelationCountEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.MasterRowGetRelationCountEventArgs e);

        [Browsable(true)]
        [Category("主/详细信息")]
        private event MasterRowGetRelationDisplayCaptionEventHandler MasterRowGetRelationDisplayCaption;

        private delegate void MasterRowGetRelationDisplayCaptionEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.MasterRowGetRelationNameEventArgs e);

        [Browsable(true)]
        [Category("主/详细信息")]
        private event MasterRowGetRelationNameEventHandler MasterRowGetRelationName;

        private delegate void MasterRowGetRelationNameEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.MasterRowGetRelationNameEventArgs e);

        [Browsable(true)]
        [Category("自定义")]
        private event HideCustomizationFormEventHandler HideCustomizationForm;

        private delegate void HideCustomizationFormEventHandler(object sender, EventArgs e);

        [Browsable(true)]
        [Category("自定义")]
        private event ShowCustomizationFormEventHandler ShowCustomizationForm;

        private delegate void ShowCustomizationFormEventHandler(object sender, EventArgs e);

        /// <summary>
        /// 在绘制单元格的时候执行。
        /// </summary>
        [Browsable(true)]
        [Category("自定义绘图")]
        [Description("在绘制单元格的时候执行。")]
        public event CustomDrawCellEventHandler CustomDrawCell;

        public delegate void CustomDrawCellEventHandler(object sender, Views.Grid.RowCellCustomDrawEventArgs e);

        /// <summary>
        /// 绘制列标题时发生。
        /// </summary>
        [Browsable(true)]
        [Category("自定义绘图")]
        [Description("绘制列标题时发生。")]
        public event CustomDrawColumnHeaderEventHandler CustomDrawColumnHeader;

        public delegate void CustomDrawColumnHeaderEventHandler(object sender, Views.Grid.ColumnHeaderCustomDrawEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event CustomDrawEmptyForegroundEventHandler CustomDrawEmptyForeground;

        private delegate void CustomDrawEmptyForegroundEventHandler(object sender, DevExpress.XtraGrid.Views.Base.CustomDrawEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event CustomDrawFilterPanelEventHandler CustomDrawFilterPanel;

        private delegate void CustomDrawFilterPanelEventHandler(object sender, DevExpress.XtraGrid.Views.Base.CustomDrawObjectEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event CustomDrawFooterEventHandler CustomDrawFooter;

        private delegate void CustomDrawFooterEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowObjectCustomDrawEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event CustomDrawFooterCellEventHandler CustomDrawFooterCell;

        private delegate void CustomDrawFooterCellEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.FooterCellCustomDrawEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event CustomDrawGroupPanelEventHandler CustomDrawGroupPanel;

        private delegate void CustomDrawGroupPanelEventHandler(object sender, DevExpress.XtraGrid.Views.Base.CustomDrawEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event CustomDrawGroupRowEventHandler CustomDrawGroupRow;

        private delegate void CustomDrawGroupRowEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowObjectCustomDrawEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event CustomDrawGroupRowCellEventHandler CustomDrawGroupRowCell;

        private delegate void CustomDrawGroupRowCellEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowGroupRowCellEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event CustomDrawRowFooterEventHandler CustomDrawRowFooter;

        private delegate void CustomDrawRowFooterEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowObjectCustomDrawEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event CustomDrawRowFooterCellEventHandler CustomDrawRowFooterCell;

        private delegate void CustomDrawRowFooterCellEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.FooterCellCustomDrawEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event CustomDrawRowIndicatorEventHandler CustomDrawRowIndicator;

        private delegate void CustomDrawRowIndicatorEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event CustomDrawRowPreviewEventHandler CustomDrawRowPreview;

        private delegate void CustomDrawRowPreviewEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowObjectCustomDrawEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event GetLoadingImageEventHandler GetLoadingImage;

        private delegate void GetLoadingImageEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.GetGridViewLoadingImageEventArgs e);

        [Browsable(true)]
        [Category("自定义绘图")]
        private event GetThumbnailImageEventHandler GetThumbnailImage;

        private delegate void GetThumbnailImageEventHandler(object sender, DevExpress.XtraGrid.Views.Grid.GridViewThumbnailImageEventArgs e);

        [Browsable(true)]
        [Category("作用")]
        public event BeforeLeaveRowEventHandler BeforeLeaveRow;

        public delegate void BeforeLeaveRowEventHandler(object sender, Views.Grid.RowAllowEventArgs e);

        [Browsable(true)]
        [Category("作用")]
        public new event EventHandler Click;
        [Browsable(true)]
        [Category("作用")]
        public new event EventHandler DoubleClick;
        [Browsable(true)]
        [Category("作用")]
        public event InvalidRowExceptionEventHandler InvalidRowException;

        public delegate void InvalidRowExceptionEventHandler(object sender, Views.Grid.InvalidRowExceptionEventArgs e);

        [Browsable(true)]
        [Category("作用")]
        public event InvalidValueExceptionEventHandler InvalidValueException;

        public delegate void InvalidValueExceptionEventHandler(object sender, Views.Grid.InvalidValueExceptionEventArgs e);

        [Browsable(true)]
        [Category("作用")]
        private new event EventHandler Layout;

        /// <summary>
        /// 单击单元格后执行。
        /// </summary>
        [Browsable(true)]
        [Category("作用")]
        [Description("单击单元格后执行。")]
        public event RowCellClickEventHandler RowCellClick;

        public delegate void RowCellClickEventHandler(object sender, Views.Grid.MouseRowColEventArgs e);

        /// <summary>
        /// 单击行后执行。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        [Browsable(true)]
        [Category("作用")]
        [Description("单击行后执行。")]
        public event RowClickEventHandler RowClick;

        public delegate void RowClickEventHandler(object sender, Views.Grid.RowClickEventArgs e);

        /// <summary>
        /// 行删除后执行。
        /// </summary>
        [Browsable(true)]
        [Category("作用")]
        [Description("行删除后执行")]
        private event RowDeletedEventHandler RowDeleted;

        private delegate void RowDeletedEventHandler(object sender, DevExpress.Data.RowDeletedEventArgs e);

        /// <summary>
        /// 行删除时执行。
        /// </summary>
        [Browsable(true)]
        [Category("作用")]
        private event RowDeletingEventHandler RowDeleting;

        private delegate void RowDeletingEventHandler(object sender, DevExpress.Data.RowDeletingEventArgs e);

        [Browsable(true)]
        [Category("作用")]
        private event RowUpdatedEventHandler RowUpdated;

        private delegate void RowUpdatedEventHandler(object sender, DevExpress.XtraGrid.Views.Base.RowObjectEventArgs e);

        [Browsable(true)]
        [Category("作用")]
        public event ValidateRowEventHandler ValidateRow;

        public delegate void ValidateRowEventHandler(object sender, Views.Grid.ValidateRowEventArgs e);
        /// <summary>
        /// 选择不同位置的数据行后执行，也就是Position属性发生变化后执行。
        /// </summary>
        [Category("选择")]
        [Description("选择不同位置的数据行后执行，也就是Position属性发生变化后执行。")]
        public event PositionChangedEventHandler PositionChanged;

        public delegate void PositionChangedEventHandler(object sender, Views.Grid.GridEventArgs e);

        /// <summary>
        /// 选择不同数据行后执行，也就是Current属性发生变化后执行。
        /// </summary>
        [Category("选择")]
        [Description("选择不同数据行后执行，也就是Current属性发生变化后执行。")]
        public event CurrentChangedEventHandler CurrentChanged;

        public delegate void CurrentChangedEventHandler(object sender, Views.Grid.GridEventArgs e);

        /// <summary>
        /// 显示快捷菜单之前执行，可以在此禁止显示快捷菜单，或更改要显示的快捷菜单。
        /// </summary>
        [Category("杂项")]
        [Description("显示快捷菜单之前执行，可以在此禁止显示快捷菜单，或更改要显示的快捷菜单。")]
        public event BeforeShowContextMenuEventHandler BeforeShowContextMenu;

        public delegate void BeforeShowContextMenuEventHandler(object sender, Views.Grid.BeforeShowContextMenuEventArgs e);

        /// <summary>
        /// 双击行后执行。
        /// </summary>
        /// <remarks></remarks>
        [Category("作用")]
        [Description("双击单元格后执行。")]
        public event RowCellDoubleClickEventHandler RowCellDoubleClick;

        public delegate void RowCellDoubleClickEventHandler(object sender, Views.Grid.MouseRowColEventArgs e);

        /// <summary>
        /// 点击新增行的时候执行
        /// </summary>
        /// <remarks></remarks>
        [Category("点击")]
        [Description("点击新增行的时候执行。")]
        public event EventHandler CellNewRowLink;

        /// <summary>
        /// 点击操作列的时候执行。
        /// </summary>
        [Category("点击")]
        [Description("点击操作列的时候执行。")]
        public event CellLinkClickEventHandler CellLinkClick;

        public delegate void CellLinkClickEventHandler(object sender, Views.Grid.MouseRowColEventArgs e);

        /// <summary>
        /// 单击单元格按钮后执行，通常用于实现一些复杂的输入功能。
        /// </summary>
        [Category("点击")]
        [Description("单击单元格按钮后执行，通常用于实现一些复杂的输入功能。")]
        public event CellButtonClickEventHandler CellButtonClick;

        public delegate void CellButtonClickEventHandler(object sender, Views.Grid.RowColEventArgs e);
    }
}